package com.uranus.auth.auth.service;

import com.uranus.auth.auth.beans.User;
import com.baomidou.mybatisplus.extension.service.IService;
import com.uranus.auth.auth.request.user.*;
import com.uranus.common.VO.Result;
import com.uranus.common.VO.paging.PagingRequest;
import com.uranus.common.constant.enums.LoginTypeEnum;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author ybx
 * @since 2018-12-21
 */
public interface UserService extends IService<User> {
    Result login(LoginRequest request);
    Result register(RegisterRequest request);
    Result update(UpdateUserRequest request);
    Result updatePassword(UpdatePasswordRequest request);
    Result forgetPassword(ForgetPasswordRequest request);
    Result bindMobile(BindMobileRequest request);
    Result bindEmail(BindMobileRequest request);
    Result queryById(Integer id);
    Result checkByLoginType(LoginTypeEnum loginType,String checkValue);
    Result search(QueryUserRequest pagingRequest);
}
